System and method of information filtering using measures of affinity of a relationship

ABSTRACT

A system, apparatus, and method are directed towards enabling information filtering using measures of an affinity of a relationship between subscribers of an online portal system. The affinity of a relationship may be determined based, in part, on the tracking of various online behaviors of and between subscribers of the portal system. Any of a variety of behaviors may be tracked, including message communications between subscribers, participation in instant messaging groups, purchases, activities, categories, and so forth. Such behaviors may be employed to determine a level of trust (or affinity) between subscribers of the portal system. This affinity measurement may be used to filter various information, including, but not limited to, product recommendations, ratings, polling queries, advertising, social network communications, personal ads, search results, and the like. Moreover, this affinity measurement may also be employed to perform message spam detection.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application,titled “System and Method for Social Networking,” Ser. No. 60/544,639filed on Feb. 13, 2004, and U.S. Provisional Application, titled “Systemand Method for Social Networking,” Ser. No. 60/540,505 filed on Jan. 29,2004, the benefit of the earlier filing date of which is hereby claimedunder 35 U.S.C. §119(e), and further each are incorporated by reference.

FIELD OF THE INVENTION

The present invention relates generally to computing software, and moreparticularly, but not exclusively to a system and method for enablinginformation filtering using measures of affinity of a relationshipbetween subscribers in a subscriber-based portal system.

BACKGROUND OF THE INVENTION

Social networking is a concept that an individual's personal network offriends, family colleagues, coworkers, and the subsequent connectionswithin those networks, can be utilized to find more relevant connectionsfor dating, job networking, service referrals, activity partners, andthe like.

A social network typically comprises a person's set of direct andindirect personal relationships. Direct personal relationships usuallyinclude relationships with family subscribers, friends, colleagues,coworkers, and other people with which the person has had some form ofdirect contact, such as contact in person, by telephone, by email, byinstant message, by letter, and the like. These direct personalrelationships are sometimes referred to as first-degree relationships.First-degree relationships can have varying degrees of closeness, trust,and other characteristics. These relationships can also beunidirectional or bidirectional. A unidirectional relationship typicallymeans that a first person is willing and able to interact with a secondperson, but the second person may not be willing or able to interactwith the first person. Conversely, a bidirectional relationshiptypically means that both people are willing and able to interact witheach other.

Indirect personal relationships typically include relationships throughfirst-degree relationships to people with whom a person has not had someform of direct contact. For example, a friend of a friend represents anindirect personal relationship. A more extended, indirect relationshipmight be a friend of a friend of a friend. These indirect relationshipsare sometimes characterized by a degree of separation between thepeople. For instance, a friend of a friend can be characterized as asecond-degree relationship.

The above personal relationships, and others, can be utilized to findand develop relevant connections for a variety of objectives. Findingand developing relevant connections can be accelerated with onlineservices. Such online social networking can be used to mine personaland/or interest relationships in a way that is often more difficultand/or time-consuming to do offline.

Thus, there has been a flurry of companies launching services that helppeople to build and mine their personal networks. However, these effortshave been predominately directed towards dating and job opportunities.Many of these companies are struggling with developing additionalservices that will build customer loyalty. Without the ability to extendthe value of the existing networks, social networking loses its appeal.Thus, it is with respect to these considerations and others that thepresent invention has been made.

BRIEF DESCRIPTION OF THE DRAWINGS

Non-limiting and non-exhaustive embodiments of the present invention aredescribed with reference to the following drawings. In the drawings,like reference numerals refer to like parts throughout the variousfigures unless otherwise specified.

For a better understanding of the present invention, reference will bemade to the following Detailed Description of the Invention, which is tobe read in association with the accompanying drawings, wherein:

FIG. 1 shows a functional block diagram illustrating one embodiment ofan environment for practicing the invention;

FIG. 2 shows one embodiment of a network device that may be included ina system implementing the invention;

FIG. 3 illustrates one embodiment of an online relationship graph;

FIG. 4 illustrates a logical flow diagram generally showing oneembodiment of a process for an online subscriber-based portal system totrack subscriber behavior information; and

FIG. 5 illustrates a logical flow diagram generally showing oneembodiment of a process for filtering information based on an affinityof a relationship derived, in part, from behaviors of subscribers in theonline portal system, in accordance with the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present invention now will be described more fully hereinafter withreference to the accompanying drawings, which form a part hereof, andwhich show, by way of illustration, specific exemplary embodiments bywhich the invention may be practiced. This invention may, however, beembodied in many different forms and should not be construed as limitedto the embodiments set forth herein; rather, these embodiments areprovided so that this disclosure will be thorough and complete, and willfully convey the scope of the invention to those skilled in the art.Among other things, the present invention may be embodied as methods ordevices. Accordingly, the present invention may take the form of anentirely hardware embodiment, an entirely software embodiment or anembodiment combining software and hardware aspects. The followingdetailed description is, therefore, not to be taken in a limiting sense.

Briefly stated, the present invention is directed towards providing asystem, apparatus, and method for enabling information filtering usingmeasures of affinity of a relationship between subscribers of an onlinesubscriber-based portal. Relationship measurements may be obtained toassess an extent of known online interactions between subscribers of theportal (online social network) system. Any of a variety of onlineinteractions may be tracked, including message communications betweensubscribers, participation in a buddy list, an instant messaging buddylist, a mailing list, an online discussion group, an activity, a chatgroup, category, and so forth. Online interactions may also bedetermined based on names within an address book of a subscriber, nameswithin an address book of another subscriber within the portal system,and the like. In addition to behavior information, such social networkinformation can comprise subscriber-defined information, subscriberbehavior information, portal assessment information, and the like.Subscriber-defined information can include contact lists, preferences,survey responses, and other information provided by a subscriber.Subscriber behavior information can also include frequency of visitingWeb sites, types of online purchases, types of online communication usedmost often, duration of participating in online activities, and otherinformation that can be detected about a subscriber's online actions.Portal assessment information may include compliments about asubscriber, complaints about a subscriber, reputation assessments frompeer subscribers, comparison between subscriber-defined information,spam detection about the subscriber, and other information determined byothers about a subscriber. Many other types of information can be storedand/or determined by an online portal (social network) system regardinga subscriber.

Such interactions and behaviors may be employed to determine a level oftrust (or affinity) between subscribers of the portal system. Thisaffinity measurement may be used by a subscriber of the portal system tofilter various information, including, but not limited to, productrecommendations, ratings, polling queries, advertising, social networkcommunications, personal ads, career opportunities, and so forth.Moreover, this affinity measurement may also be employed to performmessage spam detection.

The affinity measurement of the present invention enables an improvementover mere degrees of separation in analyzing a quality of a relationshipas it implies a level of trust based on interactions betweensubscribers. Additionally, the invention enables measuring of variousportal-based interactions as a general indication of affinity that thenmay be leveraged ‘horizontally’ for a variety of purposes. The inventionthen is directed further at addressing the limitations of approachesthat focus on ‘vertical’ patterns of conduct, such as purchases ofbooks, music, and so forth.

Illustrative Operating Environment

FIG. 1 illustrates one embodiment of an environment in which the presentinvention may operate. However, not all of these components may berequired to practice the invention, and variations in the arrangementand type of the components may be made without departing from the spiritor scope of the invention.

As shown in the figure, a system 100 includes client devices 102-104, anetwork 105, and a social network server (SNS) 108. Network 105 is incommunication with and enables communication between each of clientdevices 102-104, and SNS 108.

Client devices 102-104 may include virtually any computing devicecapable of receiving and sending a message over a network, such asnetwork 105, to and from another computing device, such as SNS 108, eachother, and the like. The set of such devices may include devices thattypically connect using a wired communications medium such as personalcomputers, multiprocessor systems, microprocessor-based or programmableconsumer electronics, network PCs, and the like. The set of such devicesmay also include devices that typically connect using a wirelesscommunications medium such as cell phones, smart phones, pagers,walkie-talkies, radio frequency (RF) devices, infrared (IR) devices,CBs, integrated devices combining one or more of the preceding devices,or virtually any mobile device, and the like. Similarly, client devices102-104 may be any device that is capable of connecting using a wired orwireless communication medium such as a PDA, POCKET PC, wearablecomputer, and any other device that is equipped to communicate over awired and/or wireless communication medium.

Each client device within client devices 102-104 may include a browserapplication that is configured to receive and to send web pages, and thelike. The browser application may be configured to receive and displaygraphics, text, multimedia, and the like, employing virtually any webbased language, including, but not limited to Standard GeneralizedMarkup Language (SMGL), such as HyperText Markup Language (HTML), awireless application protocol (WAP), a Handheld Device Markup Language(HDML), such as Wireless Markup Language (WML), WMLScript, JavaScript,and the like.

Client devices 102-104 may be further configured to receive a messagefrom another computing device employing another mechanism, including,but not limited to email, Short Message Service (SMS), MultimediaMessage Service (MMS), instant messaging (IM), internet relay chat(IRC), mIRC, Jabber, and the like.

Client devices 102-104 may be further configured to enable a user toparticipate in a social network interaction. Client devices 102-104 mayalso enable the tracking of interactions and other behaviors of itsuser, which may in turn be saved at a remote location, such as SNS 108,and the like. As such, client devices 102-104 may further include aclient application that is configured to manage various actions onbehalf of the client device. For example, the client application mayenable a user to interact with the browser application, emailapplication, and the like, to establish a subscriber's online portal, tocustomize an interaction with the online portal, to manage the user'sonline portal, to customize how another portal system subscriber mightview a persona, profile, or the like. For example, the subscriber mayemploy the client application, in part, to establish and/or modify anonline portal profile, to manage a contact list, to interact with onlineportal services, such as financial information tools, to make onlinepurchase, to store and communicate with contacts, and the like. Thesubscriber may also employ the client application, in part, to establishand/or modify a portal profile and/or an SNS profile, to establishcategories of SNS relationships to provide one customized view of SNSprofile information for family subscribers, another customized view forpoker subscribers, yet another view for fishing buddies, and the like.The client application may further enable the user to perform searchesbased on affinity of relationships within the portal system. The resultsof the affinity search may then be employed for a variety of activities,including, but not limited to determining product recommendations,ratings, polling queries, advertising, spam detections, personal ads,and so forth.

Network 105 is configured to couple one computing device to anothercomputing device to enable them to communicate. Network 105 is enabledto employ any form of computer readable media for communicatinginformation from one electronic device to another. Also, network 105 mayinclude a wireless interface, and/or a wired interface, such as theInternet, in addition to local area networks (LANs), wide area networks(WANs), direct connections, such as through a universal serial bus (USB)port, other forms of computer-readable media, or any combinationthereof. On an interconnected set of LANs, including those based ondiffering architectures and protocols, a router acts as a link betweenLANs, enabling messages to be sent from one to another. In addition,communication links within LANs typically include twisted wire pair orcoaxial cable, while communication links between networks may utilizeanalog telephone lines, full or fractional dedicated digital linesincluding T1, T2, T3, and T4, Integrated Services Digital Networks(ISDNs), Digital Subscriber Lines (DSLs), wireless links includingsatellite links, or other communications links. Furthermore, remotecomputers and other related electronic devices could be remotelyconnected to either LANs or WANs via a modem and temporary telephonelink. In essence, network 105 includes any communication method by whichinformation may travel between client devices 102-104 and SNS 108.

The media used to transmit information in communication links asdescribed above illustrates one type of computer-readable media, namelywired and/or wireless communication media. Generally, computer-readablemedia includes any media that can be accessed by a computing device.Computer-readable media may include computer storage media,communication media, or any combination thereof. Additionally,communication media typically embodies computer-readable instructions,data structures, program modules, or other data in a modulated datasignal such as a carrier wave or other transport mechanism and includesany information delivery media. The terms “modulated data signal,” and“carrier-wave signal” includes a signal that has one or more of itscharacteristics set or changed in such a manner as to encodeinformation, instructions, data, and the like, in the signal. By way ofexample, communication media includes wired media such as twisted pair,coaxial cable, fiber optics, wave guides, and other wired media andwireless media such as acoustic, RF, infrared, and other wireless media.

One embodiment of SNS 108 is described in more detail below inconjunction with FIG. 2. Briefly, however, SNS 108 may include anycomputing device capable of connecting to network 105 to communicateinformation between client devices 102-104. Devices that may operate asSNS 108 include personal computers desktop computers, multiprocessorsystems, microprocessor-based or programmable consumer electronics,network PCs, servers, and the like. SNS 108 and client devices 102-104can be arranged in a client-server relationship relative to each other.Client devices 102-104 can also be combined with SNS 108 in virtuallyany other computing architecture, including, but not limited to apeer-to-peer architecture, and the like, without departing from thescope of the present invention.

SNS 108 may be configured to send and/or make accessible, social networkinformation associated with a portal system subscriber, and configuredto enable the portal system subscriber to seek information associatedwith interactions and other behaviors of other portal systemsubscribers. As such, SNS 108 may be configured to track social networkinformation and to store such information. Such social networkinformation may include, but is not limited to, subscriber profileinformation, contact information, relationship category information, anactivity, interactions, subscriber-defined information, subscriberinformation associated with a relationship category, emailcommunications, address book information, behaviors, and the like.

Illustrative Server Environment

FIG. 2 shows a functional block diagram of an exemplary network device200, according to one embodiment of the invention. For example, networkdevice 200 can comprise SNS 108. Client devices 102-104 can be similarlyconfigured. Network device 200 may include many more components thanthose shown. The components shown, however, are sufficient to disclosean illustrative embodiment for practicing the invention.

Network device 200 includes a processing unit 212, a video displayadapter 214, and a mass memory, all in communication with each other viaa bus 222. The mass memory generally includes RAM 216, ROM 232, and oneor more permanent mass storage devices, such as an optical drive 226, ahard disk drive 228, a tape drive, and/or a floppy disk drive. The massmemory stores an operating system 220 for controlling the operation ofnetwork device 200. Any general-purpose operating system may beemployed. A basic input/output system (“BIOS”) 218 is also provided forcontrolling low-level operation of network device 200. As illustrated inFIG. 2, network device 200 can communicate with the Internet, or someother communications network, such as network 105 of FIG. 1, via anetwork interface unit 210, which may be constructed for use with any ofvariety of communication protocols including, but not limited to,transmission control protocol/Internet protocol (TCP/IP), and the like.Network interface unit 210 is sometimes known as a transceiver,transceiving device, network interface card (NIC), and the like. Networkdevice 200 also includes input/output interface 224 for communicatingwith external devices, such as a mouse, keyboard, scanner, or otherinput devices not shown in FIG. 2.

Network device 200 may include a simple mail transfer protocol (SMTP)handler application for transmitting and receiving email. Network device200 may also include a hypertext transfer protocol (HTTP) handlerapplication for receiving and handing HTTP requests, and an HTTP securesockets (HTTPS) handler application for handling secure connections. TheHTTPS handler application may initiate communication with an externalapplication in a secure fashion.

The mass memory as described above illustrates another type ofcomputer-readable media, namely computer storage media. Computer storagemedia may include volatile, nonvolatile, removable, and non-removablemedia implemented in any method or technology for storage ofinformation, such as computer readable instructions, data structures,program modules, or other data. Examples of computer storage mediainclude RAM, ROM, EEPROM, flash memory, or other memory technology,CD-ROM, digital versatile disks (DVD), or other optical storage,magnetic cassettes, magnetic tape, magnetic disk storage, or othermagnetic storage devices, or any other medium which can be used to storethe desired information and which can be accessed by a computing device.

The mass memory also stores program code and data. One or moreapplications 250 are loaded into mass memory and run on operating system220. Examples of application programs include email services,schedulers, calendars, web services, transcoders, database programs,word processing programs, spreadsheet programs, and so forth. Massstorage may further include applications such as a query manager 252,behavior tracker 254, and affinity store 256.

Affinity store 256 may include a database, text, folder, file, and thelike, that is configured to maintain and store information thatidentifies a category, an activity, and the like, as well as profile andcriteria information for each portal subscriber. Affinity store 256 mayfurther be configured to store information associated with aninteraction between subscribers, as well as virtually any behavior of asubscriber.

As such, affinity store 256 may include category information that mayrepresent a classification of subscribers and/or correspondingrelationships within a user's social network, such as familysubscribers, friends, co-workers, poker buddies, fishing buddies, andthe like. Portal system subscribers can establish their own categoriesand profile information based on corresponding portal profile dataand/or manually entered data. Information relating to a category may beaccessible to those identified as subscribers of the category. However,the invention is not so limited, and global categories may beestablished that provide profile information about a portal systemsubscriber to virtually any other portal system user. Each category mayalso include a set of subscriber-definable portal system subscriberinformation.

As stated above, activities may be stored in affinity store 256. Anactivity may include virtually any way, manner, and the like, in which aportal system subscriber may select to employ their social networkconnections. For example, activities may include, but are not limitedto, dating, job seeking, reconnecting with military comrades,communicating with fellow alumni, seeking help & advice, and the like.It may be desired, although not required, that an activity be globallyconfigured and managed by the online portal system, and made availableto all users of the online portal system. Additionally, at least aminimum set of profile information associated with the activity may beglobally established. An activity may further include an optional set ofprofile information, such as achievements, hobbies, recommendations, andthe like.

Portal profile information may also be stored that may include, but isnot limited to such information as name, alias, nickname, age, emailaddress, address book, online behaviors, and the like. Portal profileinformation may also include category profile information, activityprofile information and the like. Such additional information mayinclude, but is not limited to, a photograph, a hobby, a job history, aschool history, career information, dating information, militaryinformation, sports information, religious information, sexualorientation, politics, interests, favorite sites, self description,frequency of accessing a Web site, duration of participating in anonline activity, number of purchases made from an online vendor, and thelike.

Affinity store 256 may further store information associated with otherbehaviors and interactions of subscribers of the portal system. Suchbehavior information may include, but is not limited to, emailexchanges, frequency of contact with other subscribers, purchasinghabits, and the like. Virtually any information associated with theportal subscriber and associated portal system subscriber may beincluded within affinity store 256.

Behavior tracker 254 is configured to detect and store informationregarding a portal subscriber's online actions and profilecharacteristics. For example, behavior tracker 254 can detect that aportal subscriber navigated to one or more news Web sites atapproximately the same time each day for a current month, spentapproximately twenty hours playing an online game during each week ofthe current month, made purchases from multiple overseas vendors ofsoftware, participated in a hacker chat room, performed searches formovie times, sent an email message to a thousand sequential addresses inone day, and/or performed other actions. From these actions, behaviortracker 254 can, assess the accuracy of information provided by theportal subscriber to the online portal, gather feedback about the portalsubscriber submitted by other portal subscribers, and perform othertracking and evaluation operations. Behavior tracker 254 might alsoincludes a flag, indicator, and the like, indicating that the portalsubscriber might be engaged in spamming. Moreover, another flag might beincluded that indicates that another subscriber of the online networkthat may have interacted with portal subscriber was practicingpotentially undesirable activity. From such interactions and behaviors,profile information, and the like, behavior tracker 254 may alsodetermine an affinity of relationship or level of trust betweensubscribers of the portal system. Behavior tracker 254 may employ arelationship graph, such as described below, to determine the affinityof relationship between subscribers of the portal system. However, theinvention is not limited to employing the relationship graph, and othermechanisms may be employed to determine the affinity of relationships,without departing from the scope or spirit of the invention. In anyevent, behavior tracker 254 may employ a process substantially similarto process 400 described below in conjunction with FIG. 4 to manage theaffinity of relationship data.

Query manager 252 may be configured to employ information from a varietyof sources, including behavior tracker 252, affinity store 256, and thelike, to enable a subscriber of the portal system to manage their socialnetworking contacts, develop new contacts, obtain recommendations, aswell as to perform such activities as data mining, and the like. Forexample, in one embodiment, query manager 252 may analyze portalactivity, such as a number of email exchanges with the user, and thelike, to determine a frequency of contact with the subscriber. This mayfurther include other connections, associations, and the like,including, but not limited to emails, names within an address book ofthe user, names within an address book of another person within theportal, a buddy list, an instant messaging buddy list, an activity, chatgroup, and the like. Query manager 252 may then provide the collectedinformation to a subscriber in response to a search query for use in thesubscriber's further actions. Query manager 252, for example, may employa process substantially similar to process 500 described below inconjunction with FIG. 5 to provide the information to a subscriber.

Although illustrated in FIG. 2 as distinct components in network device200, query manager 252, behavior tracker 254, and affinity store 256 maybe arranged, combined, and the like, in any of a variety of ways,without departing from the scope of the present invention. For example,affinity store 256 may be arranged as separate components, such as anactivity store and a category store, or the like. Moreover, contactmanager 252, behavior tracker 254, and/or affinity store 256 may residein one or more separate computing devices, substantially similar tonetwork device 200.

FIG. 3 illustrates one embodiment of a relationship graph, according tothe invention. Such relationship graph, as well as other information,may be employed by the SNS 108 of FIG. 1 to obtain measures of anaffinity between subscribers. Thus, shown in the figure is one exampleof interactions between, portal system subscribers A, B1-B5, C1-C9, andD1-Dn. The illustrated example of interactions employs email addressesto form what may be known as a directional graph. However, therelationship graph may be constructed employing virtually any of avariety of other characteristics of portal system subscribers. In anyevent, the directional graph may be employed to determine relationshipinformation between portal system subscribers. As shown in the figure,the directional graph has portal system subscriber A as a focal point,with portal system subscribers B1-B5, C1-C9, and D1-Dn arranged torepresent their relationship with respect to each other and to portalsystem subscriber A. Placement within the directional graph may bedetermined based on a variety of criteria. For example, B1-B5 may beplaced closer than C1-C9 to A because A's address book may includeB1-B5s' email addresses, but not C1-C9s' email addresses. Similarly,such an arrangement may arise based on participation within an activity,group, a buddy list, category, instant messaging group, and the like.From directional graph 300 a degree of separation between portal systemsubscribers may then be determined.

A degree of separation may be defined as how far two portal systemsubscribers are separated on the directional graph. For example, asshown in FIG. 3, portal system subscribers A->B->C1-C9->D1-Dn. Also seenis that portal system subscribers A and B have one degree of separation.Similarly, portal system subscribers A and C1-C9 have two degrees ofseparation, and portal system subscribers A and D1-Dn have three degreesof separation. Typically, as degrees of separation for two portal systemsubscribers get larger in magnitude, a possible relationship strengthbetween them may become weaker. Thus, from relationships such asillustrated in directional graph 300, a relationship trust rating may bedetermined between two or more portal system subscribers, and the like.

Additionally, based on the interaction between portal system subscribersanother trust rating may be determined. This trust rating may representhow much portal system subscriber A, for example, is trusted by anotherportal system subscriber, such as B, based on their interactions. Thatis, if a portal system subscriber A is positively related with portalsystem subscriber B (A->B), A may be considered to be somewhat trustedby B. This may be because B and A are both subscribers of the sameactivity, group, category, instant messaging group, and the like. Assuch, there is a further level of trust between A and B, even though Aand B may not have directly communicated with each other.

If B is also positively related with another portal system subscriber,say C1 (B->C1), then B may be said to be somewhat trusted by C1. Fromthis, A may be trusted by C1 in some way even though A and C1 have notinteracted in the past. This may arise where A and B are subscribers ofone activity, and B and C1 are subscribers of another activity. Thus Aand C1 may be able to establish a relationship strength based on theircommon relationship to B. Thus, if A sends a message to C1, C1 might beable to treat A's message with some level of preference. Similarly, C1may elect to search for information that may include a subset ofinformation from A. Any of a variety of models may be employed todescribe this trust relationship between portal system subscribers, andsimilarly, to determine a trust based on this relationship strength.

Moreover, the relationship trust and the relationship strength may beemployed, alone, or in combination, to determine an overall level oftrust or affinity that may then be employed to enable filtering of anyof a variety of information, including, but not limited to, emailmessages for spam detection and the like, as well as to perform searcheswithin the affinity store for any of a variety of information. Forexample, a search may be performed seeking to know what bookssubscribers of my fishing category have purchased. As such, the presentinvention enables leveraging portal-based behavior information betweenportal system subscribers to perform more trustworthy and selectiveinquiries.

An Embodiment of a Behavior Tracking Process

The operation of certain aspects of the present invention will now bedescribed with respect to FIGS. 4-5. Briefly, FIG. 4 illustrates alogical flow diagram generally showing one embodiment of a process foran online portal system to track subscriber information. Process 400 ofFIG. 4 may be implemented, for example, within SNS 108 of FIG. 1.

The process is typically entered, after a start block, when a subscriberregisters with an online portal. Initially, a subscriber's portalprofile may only include a user ID. However, the subscriber can enterother information such a name, age, preferences, interests, contactlist, and the like. The entered information may be stored in an affinitystore and is usually accessible to the subscriber. Typically, with thesubscriber's consent, the online portal tracks and stores thesubscriber's behavior in the affinity store, at block 402. Some, or all,of the tracked information can be accessible to, or hidden from, thesubscriber. In addition, the portal can add information to the affinitystore indicating characteristics, possible interests, and/or otherinformation determined about the subscriber. For example, the portal candetermine that the subscriber uses the portal mostly to read news,mostly to find a job, mostly to write blogs, and/or other usage habits.Additionally, if the subscriber selects to join an activity, a group,online club, and the like, such information may also be collected andstored in the affinity store. If the subscriber receives, sends messagesto another subscriber, such information may also be tracked. Moreoverbehavior information that is tracked and analyzed can include frequencyof visiting Web sites, types of online purchases, types of onlinecommunication used most often, duration of participating in onlineactivities, and other information that can be detected about asubscriber's online actions. Thus, virtually any actions, interaction,behavior, and the like may be tracked. Furthermore, at block 402, thetracked information may be employed to determine an affinity ofrelationship between subscribers. The determined affinity ofrelationships may then be stored in the affinity store.

Moving to decision block 404, the portal can use some of the aboveinformation to determine whether the subscriber has engaged in spammingbehavior, and/or other behavior that is deemed undesirable by portaloperators, by other subscribers, by law, and the like. Spamming behavioror other undesirable behavior may be determined based on the informationobtained in block 402, as well as information obtained about thesubscriber received from other subscribers, complaints about thesubscriber, reputation assessments from peer subscribers, spam detectionabout the subscriber, spam reports, and other information determined byothers about the subscriber. In any event, if it is determined that thesubscriber has engaged in undesirable behavior, such as spamming, theportal can indicate this fact in the subscriber's affinity store, atblock 406. Such undesirable behavior may also be employed to determinean affinity of relationships, which may in turn be stored in theaffinity store. Moreover, other actions may also be taken, as desired,including, but not limited to, warning the subscriber, sanctioning thesubscriber, terminating the subscriber's access to the portal, and thelike.

Whether or not the network subscriber has engaged in undesirablebehavior, the process moves to decision block 408, where a determinationis made whether the information already obtained through the portal isbe provided to the subscriber. If the portal information is not beingprovided, portal process 400 returns to block 402 to continue trackingthe subscriber's behavior. Otherwise, the portal process proceeds toblock 410, the affinity store can then be made accessible to asubscriber, such as described below in conjunction with FIG. 5. Portalprocessing may then return to block 402 to continue tracking thesubscriber's behaviors.

FIG. 5 illustrates a logical flow diagram generally showing oneembodiment of a process for filtering information based on an affinityof a relationship derived, in part, from the online portal, inaccordance with the present invention. Process 500 of FIG. 5 may beimplemented, for example, in SNS 108 of FIG. 1.

Process 500 begins, after a start block, at block 502 where a subscriberseeks to perform a search by filtering social network information based,in part, on an affinity between subscribers. For example, the subscribermay seek information associated with all the books that may be beenpurchased by other subscribers in a category of hockey buddies that thesubscriber created. Thus, at block 502, the subscriber may select thesubject matter to filter the search. Using the above example then, thesubject matter may be purchased books. Clearly, however, the subscriberis not constrained to books as the subject matter filter parameter, andvirtually any subject matter may be selected.

Processing continues to block 504, where the subscriber selects anaffinity filter parameter. In the example, the affinity filter parametermay include the subscriber's hockey buddy category. The subscriber mayalso include a variety of other parameters, including for example, aselection to exclude any results associated with a hockey buddy that hasbeen spamming, is in a bridge category, or the like. It should beapparent then, that virtually any affinity filter parameters and/orcombinations of filter parameters may be selected. Processing flows nextto block 506, where a search is performed of the affinity store based,in part, on the filter parameters selected at blocks 502 and 504.

Process 500 continues next to decision block 508, where a determinationis made whether the search is successful. Success may be determinedbased on any of a variety of criteria, including, but not limited to asubjective determination by the subscriber. In any event, if the searchis successful, processing branches to block 510; otherwise, processingbranches to decision block 512, where the subscriber may decide torevise a filter parameter. If a filter parameter is to be revised,processing loops back to block 502; otherwise, processing returns to acalling process, to perform other actions.

At block 510, the results of the affinity-based filtered search isprovided to the portal system subscriber for use in any of a variety ofactivities, including, but not limited to performing additional filteredsearches, growing relationships, and otherwise horizontally leveragingsuch portal-based affinity information.

It will be understood that each block of the flowchart illustrationsdiscussed above, and combinations of blocks in the flowchartillustrations above, can be implemented by computer programinstructions. These program instructions may be provided to a processorto produce a machine, such that the instructions, which execute on theprocessor, create means for implementing the operations indicated in theflowchart block or blocks. The computer program instructions may beexecuted by a processor to cause a series of operational steps to beperformed by the processor to produce a computer-implemented processsuch that the instructions, which execute on the processor, providesteps for implementing the actions specified in the flowchart block orblocks.

Accordingly, blocks of the flowchart illustrations support combinationsof means for performing the indicated actions, combinations of steps forperforming the indicated actions and program instruction means forperforming the indicated actions. It will also be understood that eachblock of the flowchart illustrations, and combinations of blocks in theflowchart illustrations, can be implemented by special purposehardware-based systems, which perform the specified actions or steps, orcombinations of special purpose hardware and computer instructions.

The above specification, examples, and data provide a completedescription of the manufacture and use of the composition of theinvention. Since many embodiments of the invention can be made withoutdeparting from the spirit and scope of the invention, the inventionresides in the claims hereinafter appended.

1. A method of sharing information between a plurality of subscribers ofan online social network with a processing device that enables actions,comprising: employing the processing device to determine a relationshiptrust based that is based at least in part on behavioral informationabout at least one behavior of each subscriber in the plurality ofsubscribers of the online social network, wherein the behavioralinformation includes at least tracked online activities of eachsubscriber that is both indirect of the tracked online activity andseparate from an interaction or communication with another subscriber inthe plurality of subscribers; employing the processing device todetermine a relationship strength between each of the plurality ofsubscribers of the online social network, wherein the relationshipstrength is based at least in part on a degree of separation betweeneach of the plurality of subscribers; employing the processing device todetermine an affinity of a relationship between a subscriber and each ofthe other subscribers in the plurality of subscribers of the onlinesocial network based, in part on the relationship strength and therelationship trust that is based on the determined behavioralinformation that includes at least the tracked online activitiesseparate from an interaction or communication with another subscriber;employing the processing device to receive an input query and anaffinity filter parameter from the subscriber of the online socialnetwork, wherein the input query is a request for information and theaffinity filter parameter specifies a subset of the plurality ofsubscribers; employing the processing device to search through thedetermined behavioral information and generate a result based at leastin part on the input query, the affinity filter parameter, and thedetermined affinity of the relationship, wherein the affinity filterparameter based on a separate selection for each of the relationshiptrust and the relationship strength; and employing the processing deviceto provide the result of the searching to the subscriber of the onlinesocial network that includes actual information requested by the inputquery, wherein the actual information being based on at least onebehavior of the other subscribers in the subset of the plurality ofsubscribers.
 2. The method of claim 1, wherein the tracked onlineactivities that are independent of an interaction or communicationfurther comprises tracking at least one of a frequency with which eachsubscriber accessed at least one of a portal service and a non-portalWeb site, a duration over which the subscriber accessed at least one ofthe portal service and the non-portal Web site, a content type accessedby each subscriber through at least one of the portal service and thenon-portal Web site, a portal assessment, and an online purchase made byeach subscriber through at least one of the portal service and thenon-portal Web site.
 3. The method of claim 1, wherein determining thebehavioral information further comprises tracking at least one ofcommunicating a message between the subscriber and another subscriber,participation in a group, a buddy list, a contact list, and an activity.4. The method of claim 1, wherein the behavior of each subscriberfurther comprises participating in at least one of an online friendmatching service, an online dating service, an online job searchingservice, an online classmate searching service, an online militarycolleague searching service, an online club, an online financialservice, an online auction, and an online purchase.
 5. The method ofclaim 1, further comprising: employing the processing device todetermine whether each subscriber has engaged in spamming; and employingthe processing device to indicate in the behavioral information if eachsubscriber has engaged in spamming.
 6. The method of claim 1, whereinthe affinity of the relationship is further based at least one ofmultiple degrees of separation between the subscriber and other membersof the online social network, and a shared interest among members of theonline social network.
 7. The method of claim 1, wherein determining theaffinity of the relationship further comprises determining an affinitymeasurement based on at least a relationship of an implied level oftrust.
 8. The method of claim 1, wherein the search results furthercomprise at least one of product recommendations, ratings, pollingqueries, advertising social network communications, personal ads, andcareer opportunities.
 9. A server for communicating information betweena plurality of subscribers of an online social network, comprising: atransceiver for receiving and sending information to a computing device;a processor in communication with the transceiver; and a memory incommunication with the processor and storing data and machineinstructions that cause the processor to perform a plurality ofoperations, including: determining a relationship trust based that isbased at least in part on behavioral information about at least onebehavior of each subscriber in the plurality of subscribers of theonline social network, wherein the behavioral information includes atleast tracked online activities of each subscriber that is both indirectof the tracked online activity and separate from an interaction orcommunication with another subscriber in the plurality of subscribers;determining a relationship strength between each of the plurality ofsubscribers of the online social network, wherein the relationshipstrength is based at least in part on a degree of separation betweeneach of the plurality of subscribers; determining an affinity of arelationship between a subscriber and each of the other subscribers ofthe online social network based, in part on the relationship strengthand the relationship trust that is based on the determined behavioralinformation; receiving an input query and an affinity filter parameterfrom the subscriber, wherein the input query is a request forinformation; searching through the determined behavioral informationbased on the input query and the affinity filter parameter, wherein theaffinity filter parameter is based on a separate selection for each ofthe relationship trust and the relationship strength; obtaining actualinformation that satisfies the search, wherein the actual information iscollective information from more than a single other subscriber withinthe plurality of subscribers; and providing directly to the subscriberthe collective actual information.
 10. The server of claim 9, whereindetermining the behavioral information further comprises tracking atleast one of communicating a message between the subscriber and theother subscriber, participation in a group, a buddy list, a contactlist, and an activity.
 11. The server of claim 9, wherein determiningthe affinity of the relationship further comprises employing arelationship graph.
 12. The server of claim 9, where determining theaffinity of the relationship further comprises determining an affinitymeasurement based on at least a relationship trust of an implied levelof trust.
 13. The server of claim 9, where determining the affinity ofthe relationship further comprises determining a relationship trust anda relationship strength, and combining the relationship trust andrelationship strength to determine the affinity.
 14. The server of claim9, wherein providing the portion of the search results further comprisesproviding the portion of information to a mobile device.
 15. The serverof claim 9, wherein searching through the determined behavioralinformation further comprises performing a search using the determinedaffinity of the relationship to filter the determined behavioralinformation.
 16. The server of claim 9, wherein searching through thedetermined behavioral information further comprises performing a searchusing the determined affinity of the relationship and a subject matterto filter the determined behavioral information.
 17. A computer readablestorage medium having computer readable instructions thereon foraccessing portal subscriber behavioral information between a pluralityof portal subscribers of an online social network, that when executedwithin a computing device performs actions, comprising: enabling thecomputing device to determine a relationship trust based that is basedat least in part on tracking portal subscriber behavioral informationbased at least in part on a behavior of each of the plurality of portalsubscribers, wherein the behavioral information includes at leasttracked online activities of each portal subscriber that is bothindirect of the tracked online activity and separate from an interactionor communication with another portal subscriber in the plurality ofportal subscribers; enabling the computing device to determine arelationship strength between each of the plurality of subscribers ofthe online social network, wherein the relationship strength is based atleast in part on a degree of separation between each of the plurality ofsubscribers; enabling the computing device to enable a determination ofan affinity of a relationship between each portal subscriber and eachother portal subscriber in the plurality of portal subscribers based onthe relationship strength and the relationship trust that is based onthe tracked behavioral information; enabling the computing device toreceive an input query and an affinity filter parameter from a portalsubscriber, wherein the input query is a request for information;enabling the computing device to search through the determinedbehavioral information based on the input query and the affinity filterparameter, wherein the affinity filter parameter is based on a separateselection for each of the relationship trust and the relationshipstrength; enabling the computing device to obtain actual informationthat satisfies the search, wherein the actual information is collectiveinformation from more than a single other portal subscriber within theplurality of portal subscribers; and enabling the computing device toprovide directly to the requesting portal subscriber the collectiveactual information.
 18. The computer readable storage medium of claim17, wherein providing the search results further comprises accessing theprovided search results from a mobile device.
 19. The computer readablestorage medium of claim 17, wherein enabling the determination of theaffinity of the relationship further comprises, determining an affinitymeasurement based on at least a relationship of an implied level oftrust.
 20. The computer readable storage medium of claim 17, wherein thebehavior of the subscriber further comprises participating in at leastone of an online friend matching service, an online dating service, anonline job searching service, an online classmate searching service, anonline military colleague searching service, an online club, an onlinefinancial service, an online auction, an activity, a category, a chatsession, an instant messaging session, an email communication, and anonline purchase.
 21. An apparatus for accessing portal subscriberinformation between a plurality of subscribers of an online socialnetwork, comprising: a memory for storing processor readable data; anetwork interface for communicating with the plurality of subscribers ofthe online social network; and a processor that executes the stored datato enable a plurality of modules to perform actions, comprising: a firstmodule that is arranged to determine a relationship trust based that isbased at least in part on tracking portal subscriber behavioralinformation based at least in part on a behavior of each portalsubscriber in the plurality of portal subscribers, wherein thebehavioral information includes at least tracked online activities ofeach portal subscriber that is both indirect of the tracked onlineactivity and separate from an interaction or communication with anotherportal subscriber in the plurality of portal subscribers; a secondmodule that is arranged to determine a relationship strength betweeneach of the plurality of subscribers of the online social network,wherein the relationship strength is based at least in part on a degreeof separation between each of the plurality of subscribers; a thirdmodule that is arranged to determine an affinity of a relationshipbetween each portal subscriber and each other portal subscriber in theplurality of portal subscribers based on the relationship strength andthe relationship trust that is based on the tracked behavioralinformation; a fourth module that is arranged to receive an input queryand an affinity filter parameter from a portal subscriber, wherein theinput query is a request for information; a fifth module that isarranged to search through the determined behavioral information basedon the input query and the affinity filter parameter, wherein theaffinity filter parameter is based on a separate selection for each ofthe relationship trust and the relationship strength; a sixth modulethat is arranged to obtain actual information that satisfies the search,wherein the actual information is collective information from more thana single other portal subscriber within the plurality of portalsubscribers; a seventh module that is arranged to provide directly tothe requesting portal subscriber the actual information; and an eighthmodule that is arranged to provide at least a portion of the searchresults to at least one other subscriber of the online social network,wherein the search results describe at least one behavior.